
import java.util.LinkedList;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
/**
 *
 * @author Jobson
 */
public class Disciplina {

    private String nome;
    private int qtdeVagas, qtdenotas, qtdeMatriculados, CH, indiceCH;
    private LinkedList<String> matriculados;
    private LinkedList<double[]> notas;
    private LinkedList<boolean[]> sets;
    private LinkedList<int[]> faltas;

    public Disciplina(String nome, int indiceCH, int qtdeVagas) {
        this.nome = nome;
        this.indiceCH = indiceCH;
        switch (indiceCH) {
            case 0:
                this.CH = 30;
                qtdenotas = 3;
                notas = new LinkedList<double[]>();
                break;
            case 1:
                this.CH = 40;
                qtdenotas = 4;
                notas = new LinkedList<double[]>();
                break;
            case 2:
                this.CH = 50;
                qtdenotas = 4;
                notas = new LinkedList<double[]>();
                break;
            case 3:
                this.CH = 60;
                qtdenotas = 5;
                notas = new LinkedList<double[]>();
                break;
        }
        this.qtdeVagas = qtdeVagas;
        this.matriculados = new LinkedList<String>();
        this.faltas = new LinkedList<int[]>();
        this.sets = new LinkedList<boolean[]>();
        qtdeMatriculados = 0;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public int getCh() {
        return CH;
    }

    public void setCh(int ch) {
        this.CH = ch;
    }

    public int getQtdeVagas() {
        return qtdeVagas;
    }

    public void setQtdeVagas(int qtdeVagas) {
        this.qtdeVagas = qtdeVagas;
    }

    public LinkedList<String> getMatriculados() {
        return matriculados;
    }

    public void setMatriculados(LinkedList<String> matriculados) {
        this.matriculados = matriculados;
    }

    public int getQtdeNotas() {
        return qtdenotas;
    }

    public void setQtdeNotas(int qtdenotas) {
        this.qtdenotas = qtdenotas;
    }

    public LinkedList<double[]> getNotas() {
        return notas;
    }

    public void setNotas(LinkedList<double[]> notas) {
        this.notas = notas;
    }

    public int getQtdeMatriculados() {
        return qtdeMatriculados;
    }

    public void setQtdeMatriculados(int qtdematriculados) {
        this.qtdeMatriculados = qtdematriculados;
    }

    public LinkedList<int[]> getFaltas() {
        return faltas;
    }

    public void setFaltas(LinkedList<int[]> faltas) {
        this.faltas = faltas;
    }

    public LinkedList<boolean[]> getSets() {
        return sets;
    }

    public void setSets(LinkedList<boolean[]> sets) {
        this.sets = sets;
    }

    public int getIndiceCH() {
        return indiceCH;
    }

    public void setIndiceCH(int indiceCH) {
        this.indiceCH = indiceCH;
    }

    public int getQtdenotas() {
        return qtdenotas;
    }

    public void setQtdenotas(int qtdenotas) {
        this.qtdenotas = qtdenotas;
    }

    public int getCH() {
        return CH;
    }

    public void setCH(int CH) {
        this.CH = CH;
    }
    

    public double[] getNotasAluno(String mat1) {
        int i = 0;
        for (String mat2 : matriculados) {
            if (mat2.equals(mat1)) {
                return notas.get(i);
            }
            i++;
        }
        return null;
    }

    public boolean[] getSetsAluno(String mat1) {
        int i = 0;
        for (String mat2 : matriculados) {
            if (mat2.equals(mat1)) {
                return sets.get(i);
            }
            i++;
        }
        return null;
    }

    public int getFaltasAluno(String mat1) {
        int i = 0;
        for (String mat2 : matriculados) {
            if (mat2.equals(mat1)) {
                return faltas.get(i)[0];
            }
            i++;
        }
        return 0;
    }
}
